package gbench.appdemo.mall.junit;

import static gbench.common.matlib.MatlibCanvas.println;

import java.io.File;

import org.junit.jupiter.api.Test;

import gbench.appdemo.mall.erp.MyPlatform;
import gbench.appdemo.mall.erp.components.IEnterprise;
/**
 * 
 * @author gbench
 *
 */
public class JunitProductSite {
    
    /**
     * 为企业生成产品资料集合<br>
     * 需要在 JunitErp.foo 生成企业产品目录后再运行 本程序
     */
    @Test
    public void foo() {
        final var platform = new MyPlatform();
        final var home = new File("D:/sliced/tmp/erpsite/product");
        if (!home.exists()) { // 路径的构建
            home.mkdirs();
        }
        final var infoSite = platform.infoSiteOf(home.getAbsolutePath()); // 指定一个文件路径
        
        platform.withTransaction(erpApp->{
            erpApp.dataApp().sqlqueryS("select* from t_fortune").limit(10).map(erpApp.ctor(IEnterprise.class)).forEach(enterpise->{
                final var catalog = enterpise.getCatalog();
                if (catalog != null) {
                    catalog.getPriceQuoteS().map(infoSite::getResources).forEach(e -> {
                        println(e);
                    }); // foreach
                }// if catalog
            }); // forEach
            
            return null;
        }); // withTransaction
        
    }

}
